/*************************************************
filename	: module.h
author		: Stefan lulham
desc		: base module class
*************************************************/
#ifndef D_MODULE_H
#define D_MODULE_H

#include <string>
#include <iostream>

#include "interface.h"

using namespace std;

namespace DelGE
{
	namespace Modules
	{
		class Module
		{
		protected:
			string			sName;
			Interface		*pInterface;

			virtual void LoadModule() = 0;
			virtual void UnloadModule() = 0;

		public:
			void SetInterface(Interface* pInterface);
			Interface* GetInterface();

			string GetName();
		};
	}
}

#endif